package arithmetic;

import java.util.ArrayList;
import java.util.Scanner;

/**
 * 描述
 * 明明生成了N个1到500之间的随机整数。请你删去其中重复的数字，即相同的数字只保留一个，把其余相同的数去掉，然后再把这些数从小到大排序，按照排好的顺序输出。
 * <p>
 * 数据范围：1≤n≤1000  ，输入的数字大小满足 1≤val≤500
 * <p>
 * 输入描述：
 * 第一行先输入随机整数的个数 N 。 接下来的 N 行每行输入一个整数，代表明明生成的随机数。 具体格式可以参考下面的"示例"。
 * <p>
 * 输出描述：
 * 输出多行，表示输入数据处理后的结果
 */
public class TestHW3 {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = "";
        try {
            int num = scanner.nextInt();
            int[] arr = new int[num];
            if (num < 1 || num > 1000) {
                System.out.println(":输入错误，首次输入范围应当介于1到1000之间的整数");
            } else {
                boolean f = true;
                //去重
                for (int i = 0; i < num; i++) {
                    try {
                        int num1 = scanner.nextInt();
                        if (num1 < 1 || num1 > 500) {
                            System.out.println("输入错误，非首次输入范围应当介于1到500之间的整数");
                            break;
                        }else{
                            boolean f1 = true;
                            for (int j = 0; j < arr.length; j++) {
                                if (arr[j]==num1){
                                    f1 = false;
                                }
                            }
                            if(f1){
                                arr[i]=num1;
                                str=str+num1+",";
                            }
                        }

                    } catch (Exception e) {
                        System.out.println("输入错误，非首次输入范围应当介于1到500之间的整数");
                        e.printStackTrace();
                        f = false;
                        break;
                    }
                }
                //数组去重
                if (f) {
                    String[] arr1 = str.split(",");
                    //排序 从小到大
                    for (int i = 1; i < arr1.length; i++) {
                        int pre = i - 1;
                        String temp = "";
                        while (pre >= 0 && Integer.valueOf(arr1[pre]) > Integer.valueOf(arr1[pre + 1])) {
                            temp = arr1[pre];
                            arr1[pre] = arr1[pre + 1];
                            arr1[pre + 1] = temp;
                            pre--;
                        }
                    }
                    //输出
                    for (int i = 0; i < arr1.length; i++) {
                        System.out.println(arr1[i]);
                    }
                }
            }
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("2.输入错误，首次输入范围应当介于1到1000之间的整数");
        }

    }
}
